package thread.state;

/**
 * @author 真香
 * @create 2021-06-03 22:01
 */

/**
 * 观察线程状态
 */
public class TestState {

    public static void main(String[] args) throws InterruptedException {

       Thread thread= new Thread(() ->{
            for (int i = 0; i < 5; i++) {

                try {
                    Thread.sleep(1000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }

            }
            System.out.println("=============");
        });


        // 观察状态
        Thread.State state = thread.getState();
        System.out.println(state);

        //观察启动后状态
        thread.start();
         state = thread.getState();
        System.out.println(state);


        // 只要线程不死亡就一直输出
        while (state != Thread.State.TERMINATED) {
            Thread.sleep(1000);
            // 更新线程状态
            state = thread.getState();
            System.out.println(state);
        }

        // 观察

    }


}
